package com.zuipin.service;

import java.util.List;

import com.zuipin.entity.BaseRegion;
import com.zuipin.util.Pagination;
import com.zuipin.vo.BaseRegionVo;

/**
 * 基础资料-地区service
 * 
 * @ClassName: IBaseRegionService
 * @Description: TODO
 * @author robot
 * @date 2017年3月27日 上午10:48:01
 */
public interface IBaseRegionService {
	/**
	 * 查询基础资料-地区
	 * @Title: findById
	 * @author robot
	 * @date 2017年04月257日 08:30:25
	 * @param id,
	 * @return
	 * @return BaseRegion
	 */
	public BaseRegion findById( Integer id);
	/**
	 * @功能描述：按地区编号查询地区
	 * @作者 : cjj 
	 * @创建时间 : 2017年4月25日上午10:24:46
	 * @param code
	 * @return
	*/
	public BaseRegion findByCode(String code);
	/**
	 * @功能描述：按父地区编号查询子地区
	 * @作者 : cjj 
	 * @创建时间 : 2017年4月25日上午10:25:05
	 * @param parentCode
	 * @return
	*/
	public List<BaseRegionVo> findByParentCode(String parentCode);
	/**
	 * @功能描述：查询所有省份
	 * @作者 : cjj 
	 * @创建时间 : 2017年4月25日上午10:25:33
	 * @return
	*/
	public List<BaseRegion> findByLevel(Integer regionLevel);
	/**
	 * @功能描述：查询地区树
	 * @作者 : cjj 
	 * @创建时间 : 2017年4月25日上午10:25:48
	 * @return
	*/
	public List<BaseRegionVo> findRegionTree(Integer regionLevel);
	/**
	 * @功能描述：查询所有地区
	 * @作者 : cjj 
	 * @创建时间 : 2017年4月25日上午10:26:16
	 * @return
	*/
	public List<BaseRegion> findAll();
	
	/**
	 * 插入基础资料-地区
	 * 
	 * @Title: insert
	 * @author robot
	 * @date 2017年04月257日 08:30:25
	 * @param baseRegion
	 * @return void
	 */
	public void insert(BaseRegion baseRegion);
	
	/**
	 * 更新基础资料-地区
	 * 
	 * @Title: update
	 * @author robot
	 * @date 2017年04月257日 08:30:25
	 * @param baseRegion
	 * @return void
	 */
	public void update(BaseRegion baseRegion);
	
	/**
	 * 删除基础资料-地区
	 * @Title: delete
	 * @author robot
	 * @date 2017年04月257日 08:30:25
	 * @param id,
	 * @return void
	 */
	public void delete( Integer id);
	
	/**
	 * 搜索基础资料-地区
	  *  @Title: seachBaseRegion
	  * @author robot
	  * @date 2017年04月257日 08:30:25
	  * @param baseRegion
	  * @param page
	  * @return
	  * @return List<BaseRegion>
	 */
	public List<BaseRegion> seachBaseRegion(BaseRegion baseRegion, Pagination page);
	
	List<BaseRegionVo> findChilds(String code);
}
